<?php

class Usuarios {

    private $codigo;
    private $nome;
    private $login;
    private $senha;
    private $cpf;
    private $rg;
    private $tel_residencial;
    private $celular;
    private $endereco;
    private $numero;
    private $bairro;
    private $codmunicipio;
    private $codtipo;

    function __construct($codigo, $nome, $login, $senha, $cpf, $rg, $tel_residencial, $celular, $endereco, $numero, $bairro, $codmunicipio, $codtipo) {
        $this->codigo = $codigo;
        $this->nome = $nome;
        $this->login = $login;
        $this->senha = $senha;
        $this->cpf = $cpf;
        $this->rg = $rg;
        $this->tel_residencial = $tel_residencial;
        $this->celular = $celular;
        $this->endereco = $endereco;
        $this->numero = $numero;
        $this->bairro = $bairro;
        $this->codmunicipio = $codmunicipio;
        $this->codtipo = $codtipo;
    }

    public function getCodigo() {
        return $this->codigo;
    }

    public function setCodigo($codigo) {
        $this->codigo = $codigo;
    }

    public function getNome() {
        return $this->nome;
    }

    public function setNome($nome) {
        $this->nome = $nome;
    }

    public function getLogin() {
        return $this->login;
    }

    public function setLogin($login) {
        $this->login = $login;
    }

    public function getSenha() {
        return $this->senha;
    }

    public function setSenha($senha) {
        $this->senha = $senha;
    }

    public function getCpf() {
        return $this->cpf;
    }

    public function getRg() {
        return $this->rg;
    }

    public function getTel_residencial() {
        return $this->tel_residencial;
    }

    public function getCelular() {
        return $this->celular;
    }

    public function getEndereco() {
        return $this->endereco;
    }

    public function getNumero() {
        return $this->numero;
    }

    public function getBairro() {
        return $this->bairro;
    }

    public function getCodmunicipio() {
        return $this->codmunicipio;
    }

    public function setCpf($cpf) {
        $this->cpf = $cpf;
    }

    public function setRg($rg) {
        $this->rg = $rg;
    }

    public function setTel_residencial($tel_residencial) {
        $this->tel_residencial = $tel_residencial;
    }

    public function setCelular($celular) {
        $this->celular = $celular;
    }

    public function setEndereco($endereco) {
        $this->endereco = $endereco;
    }

    public function setNumero($numero) {
        $this->numero = $numero;
    }

    public function setBairro($bairro) {
        $this->bairro = $bairro;
    }

    public function setCodmunicipio($codmunicipio) {
        $this->codmunicipio = $codmunicipio;
    }

    public function getCodtipo() {
        return $this->codtipo;
    }

    public function setCodtipo($codtipo) {
        $this->codtipo = $codtipo;
    }

    public function Insere_usuario() {
        $conn = new DB_Config();
        $query = ("
                INESRT 
                INTO usuarios 
                SET 
                nome=" . $this->nome .
                ",login=" . $this->login .
                ",senha=" . $this->senha .
                ",cpf=" . $this->cpf .
                ",rg=" . $this->rg .
                ",tel_residencial=" . $this->tel_residencial .
                ",celular=" . $this->celular .
                ",endereco=" . $this->endereco .
                ",numero=" . $this->numero .
                ",bairro=" . $this->bairro .
                ",codmunicipio=" . $this->codmunicipio .
                ",codtipo=" . $this->codtipo . " 
                ");
        if ($conn->Query($query)) {
            echo "Usuário cadastrado!";
        } else {
            throw new Exception("Erro ao cadastrar usuário");
        }
    }

    public function Altera_usuario() {

        $conn = new DB_Config();
        $altSenha = '';
        if($this->senha != ''){
            $altSenha = ",senha=".$this->senha."";
        }else{
            $altSenha = '';
        } 
        $query = ("
            UPDATE 
            usuarios 
            SET 
                nome=" . $this->nome .
                ",login=" .$this->login.
                $altSenha.
                ",cpf=" . $this->cpf .
                ",rg=" . $this->rg .
                ",tel_residencial=" . $this->tel_residencial .
                ",celular=" . $this->celular .
                ",endereco=" . $this->endereco .
                ",numero=" . $this->numero .
                ",bairro=" . $this->bairro .
                ",codmunicipio=" . $this->codmunicipio .
                ",codtipo=" . $this->codtipo . " 
                WHERE codigo = " . $this->codigo . "            
                ");

        if ($conn->Query($query)) {
            echo "usuario alterado!";
        } else {
            throw new Exception("Erro ao alterar usuario");
        }
    }

    function deleta_usuario() {
        $conn = new DB_Config();
        $query = ("DELETE FROM usuarios WHERE codigo= " . $this->codigo . "");
        if ($conn->Query($query)) {
            echo "usuario deletado";
        } else {
            throw new Exception("Erro ao deletar usuario!");
        }
    }

    function Lista_usuarios() {
        $conn = new DB_Config();
        $where = '';
        $cont = 0;
        $lista = '';
        if ($this->codigo != '') {
            $where = " WHERE codigo = " . $this->codigo . "";
        }
        $query = ("
            SELECT
            codigo,
            nome,
            login,
            senha,
            cpf,
            rg,
            tel_residencial,
            celular,
            endereco,
            numero,
            bairro,
            codmunicipio,
            codtipo         
            FROM
            usuarios
            ".$where."
            ");
        $resultado = $conn->Query($query);
        while($dados = $resultado->FetchObject()){
           $lista[$cont]["codigo"] = $dados->codigo;
           $lista[$cont]["nome"] = $dados->nome;
           $lista[$cont]["login"] = $dados->login;
           $lista[$cont]["senha"] = $dados->senha;
           $lista[$cont]["cpf"] = $dados->cpf;
           $lista[$cont]["rg"] = $dados->rg;
           $lista[$cont]["tel_residencial"] = $dados->tel_residencial;
           $lista[$cont]["celular"] = $dados->celular;
           $lista[$cont]["endereco"] = $dados->endereco;
           $lista[$cont]["numero"] = $dados->numero;
           $lista[$cont]["bairro"] = $dados->bairro;
           $lista[$cont]["codmunicipio"] = $dados->codmunicipio;
           $lista[$cont]["codtipo"] = $dados->codtipo;
           $cont++;
        }
        return $lista;
    }

}

?>